1. Field of the Invention
The present invention relates to systems and methods of generating test cases, and in particular to a method and system for generating test cases using a test object library.
2. Description of the Related Art
The past two decades have seen a rapid proliferation of computer application programs. To be competitive, software applications must be responsible to customer's rapidly evolving needs, and must be as bug-free as possible. One method of assuring that a software release is bug free is by testing the software with a wide variety of test cases, carefully chosen to test all critical modules in the software product. Such testing procedures are especially important where the software under test is designed to operate across a number of processors or other systems operating in parallel. In such cases, the individuals writing the test cases should be familiar with the operating system, and communication protocols for all of the elements in the system, but unfortunately, there are few individuals with all of the skills necessary to write a complete test program.
The development and execution of software test cases also takes a large investment of time and resources, and can delay the timely introduction of a software product to the marketplace. Because software applications are written and sold in a highly competitive environment, there is an urgent need to reduce the cost and time involved in testing software.
Typically, the process of developing software test procedures begins with the generation of a test plan with test objectives and procedures. That test plan is published and subject to review. If the test plan is approved, detailed automated test code is written. Invariably, the test code does not function as desired, and changes must be made to the code, often implicating major changes in the test plan as well. However, in the rush to bring the software product to market, it often occurs that the test plan is never updated to reflect the new test procedures. Even if the exigencies of the situation permit the test plan to be updated, this effort usually involves a significant amount of time and money.
What is needed is an improved system and method for developing test cases. The present invention satisfies that need by offering a system that relieves the system test designer from writing the automated code from scratch. Instead, the test designer is provided with a library of test objects, each implementing a portion of the automated test procedure. When one of the objects in the library is selected, the user is prompted to select from test object options that define required test parameters, thus simplifying the process. The system and method for developing test cases also relieves the test case designer from the burden of familiarizing themselves with the protocols and interoperability requirement for each and every system element used by the software, and allows the test plan to be updated and documented with significantly less effort.